package main

//
//import (
//	"context"
//	"errors"
//	"fmt"
//	openai "github.com/sashabaranov/go-openai"
//	"io"
//	"net/http"
//	"net/url"
//)
//
//func main() {
//	config := openai.DefaultConfig("")
//	proxyUrl, err := url.Parse("")
//	if err != nil {
//		panic(err)
//	}
//	transport := &http.Transport{
//		Proxy: http.ProxyURL(proxyUrl),
//	}
//	config.HTTPClient = &http.Client{
//		Transport: transport,
//	}
//
//	c := openai.NewClientWithConfig(config)
//	ctx := context.Background()
//
//	req := openai.ChatCompletionRequest{
//		Model:     openai.GPT3Dot5Turbo,
//		MaxTokens: 20,
//		Messages: []openai.ChatCompletionMessage{
//			{
//				Role:    openai.ChatMessageRoleUser,
//				Content: "Lorem ipsum",
//			},
//		},
//		Stream: true,
//	}
//	stream, err := c.CreateChatCompletionStream(ctx, req)
//	if err != nil {
//		fmt.Printf("ChatCompletionStream error: %v\n", err)
//		return
//	}
//	defer stream.Close()
//
//	fmt.Printf("Stream response: ")
//	for {
//		response, err := stream.Recv()
//		if errors.Is(err, io.EOF) {
//			fmt.Println("\nStream finished")
//			return
//		}
//
//		if err != nil {
//			fmt.Printf("\nStream error: %v\n", err)
//			return
//		}
//
//		fmt.Printf(response.Choices[0].Delta.Content)
//	}
//}
